# 使用函数创建多线程
# 在Python3中，Python提供了一个内置模块 threading.Thread，可以很方便地让我们创建多线程。threading.Thread() 一般接收两个参数：
# 线程函数名：要放置线程让其后台执行的函数，由我们自已定义，注意不要加()；
# 线程函数的参数：线程函数名所需的参数，以元组的形式传入。若不需要参数，可以不指定。
import time
from threading import Thread


def func(name='English'):
    for i in range(3):
        print('Hello', name)
        time.sleep(1)


if __name__ == '__main__':
    # 实例化Thread对象
    # target参数一定为一个函数，且不带括号
    # args参数为元组类型，参数为一个时一定要加逗号
    thread1 = Thread(target=func)
    thread2 = Thread(target=func, args=('Alicsa',))
    thread1.start()
    thread2.start()
    # 阻塞子线程，待子线程结束后，再往下执行（挂起线程）
    thread1.join()
    thread2.join()
